<template>
  <div>
    <h2>随机点名</h2>
    <div class="box">
      <span>名字是：</span>
      <div class="qs">{{ str }}</div>
    </div>
    <div class="btns">
      <button class="start" @click="start" :disabled="flag">开始</button>
      <button class="end" @click="end">结束</button>
    </div>
  </div>
</template>

<script>
export default {
  data() {
    return {
      list: ["孙悟空", "沙师弟", "八戒", "唐僧", "小白龙"],
      str: "这里显示姓名",
      flag: false,
    };
  },
  methods: {
    start() {
      this.flag = true;
      this.timer = setInterval(() => {
        const r = parseInt(Math.random() * this.list.length);
        this.str = this.list[r];
      }, 50);
    },
    end() {
      this.flag = false;
      clearInterval(this.timer);
    },
  },
};
</script>

<style>
* {
  margin: 0;
  padding: 0;
}

h2 {
  text-align: center;
}

.box {
  width: 600px;
  margin: 50px auto;
  display: flex;
  font-size: 25px;
  line-height: 40px;
}

.qs {
  width: 450px;
  height: 40px;
  color: red;
}

.btns {
  text-align: center;
}

.btns button {
  width: 120px;
  height: 35px;
  margin: 0 50px;
}
</style>